A selective dynamic compiler for embedded Java virtual machines targeting ARM processors

نویسندگان

  • Mourad Debbabi
  • Abdelouahed Gherbi
  • Azzam Mourad
  • Hamdi Yahyaoui
چکیده

This paper presents a new selective dynamic compilation technique targeting ARM 16/32-bit embedded system processors. This compiler is built inside the J2ME/CLDC (Java 2 Micro Edition for Connected Limited Device Configuration) platform [Sun MicroSystems, Java 2 Platform, Micro Edition, Version 1.0 Connected, Limited Device Configuration, Specification, Technical Report, Sun Microsystems, CA, USA, May 2000]. The primary objective of this work is to elaborate an efficient, lightweight and low-footprint accelerated Java virtual machine ready to be executed on embedded machines. This is achieved by implementing a selective ARM dynamic compiler called Armed E-Bunny into Sun’s Kilobyte Virtual Machine (KVM) [Sun MicroSystems, KVM porting guide, Technical Report, Sun MicroSystems, CA, USA, September 2001]. In this paper we present the motivations, the architecture, the design and the implementation of Armed E-Bunny. The modified KVM is ported on a handheld PDA that is powered with embedded Linux and is tested using standard J2ME benchmarks. The experimental results demonstrate that a speed-up of 360% over the last version of Sun’s KVM is accomplished with a footprint that does not exceed 119 KB. An important result of this paper is also the proposition of an acceleration technique that leverages Armed E-Bunny by establishing a synergy between efficient interpretation and selective dynamic compilation. The main traits of this technique are: a one-pass compilation by code reuse, an efficient threaded interpretation and a fast switching mechanism between the interpreted and compiled modes.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A dynamic compiler for embedded Java virtual machines

A new acceleration technology for Java embedded virtual machines is presented in this paper. Based on the selective dynamic compilation technique, this technology addresses the J2ME/CLDC (Java 2 Micro Edition for Connected Limited Device Configuration) platform. The primary objective of our work is to come up with an efficient, lightweight and low-footprint accelerated embedded Java Virtual Mac...

متن کامل

E-Bunny: A Dynamic Compiler for Embedded Java Virtual Machines

A new acceleration technology for Java embedded virtual machines is presented in this paper. Based on the selective dynamic compilation technique, this technology addresses the J2ME/CLDC (Java 2 Micro Edition for Connected Limited Device Configuration) platform. The primary objective of our work is to come up with an efficient, lightweight and low-footprint accelerated embedded Java Virtual Mac...

متن کامل

A Exploring Single and Multi-Level JIT Compilation Policy for Modern Machines1

Dynamic or Just-in-Time (JIT) compilation is essential to achieve high-performance emulation for programs written in managed languages, such as Java and C#. It has been observed that a conservative JIT compilation policy is most effective to obtain good runtime performance without impeding application progress on single-core machines. At the same time, it is often suggested that a more aggressi...

متن کامل

A Haskell to Java Virtual Machine Code Compiler

For some time now, we have been interested in using Haskell to program inexpensive embedded processors, such as those in SUN's new Java family. This paper describes our rst attempt to produce a Haskell to Java Virtual Machine code compiler, based on a mapping between the G-machine and the Java Virtual Machine. Although this mapping looks good, it is not perfect, and our rst results suggest that...

متن کامل

Optimizing Java Bytecode for Embedded Systems

Modern Java Virtual Machines (JVM) for desktop and server computers use just-in-time (JIT) compilation to increase their performance. For embedded Java processors, JIT usually is not feasable. Therefore the java bytecode needs to be optimized for a specific platform ahead-of-time. To generate optimized bytecode for the JOP Java processor several existing tools were compared. In order to impleme...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Sci. Comput. Program.

دوره 59  شماره 

صفحات  -

تاریخ انتشار 2006